/*
    针对/admin /setting 的请求，要求URL携带code=521参数，如未携带提示[暗号错误]
    步骤：1、先判断是否为admin或setting，若是执行checkCodeMiddleware
         2、该方法中判断是否有code参数等于521，若有则执行next即send相应报文
         3、若无，则进入else，send暗号错误
*/

//导入express模块
const express = require('express');

let checkCodeMiddleware = (req, res, next) => {
    //判断url中code参数是否等于521
    if (req.query.code === '521') {
        next();
    } else {
        res.send('暗号错误');
    }
}

//创建应用对象
const app = express();

//创建路由
app.get('/home', checkCodeMiddleware, (req, res) => {
    res.send('前台首页');
})

app.get('/admin', checkCodeMiddleware, (req, res) => {
    res.send('后台首页');
})

app.get('/setting', checkCodeMiddleware, (req, res) => {
    res.send('设置页面');
})

app.all('*', checkCodeMiddleware, (req, res) => {
    res.send('<h1>404 Not Found</h1>')
})

//监听端口，启动服务
app.listen(3000, () => {
    console.log('服务已经启动，3000端口正在监听中……');
})